1 Field of the Invention:
The present invention relates to an apparatus for simultaneously projecting an image such as a character or any other figure and serially discriminating the degree of similarity between the image and a reference image, the apparatus being suitably used in an image recognition apparatus such as an OCR (Optical Character Reader).
2 Description of the Prior Art:
A conventional image recognition apparatus for recognizing an image such as a character and any other figure is designed to perform processing utilizing mainly electronic techniques.
A conventional image recognition apparatus will be briefly described. An image (input image) pattern subjected to image recognition and written on an original by printing or the like is focused by an optical lens on a light-receiving surface of an image sensor comprising a CCD or a MOS sensor. An analog signal as image information is output from the image sensor and is binarized by a proper threshold value (if there are multiple threshold values, multi-value conversion different from that described above is performed). The binarized signal is stored in a memory. The binarized image information is subjected to preprocessing for shaping the image, as needed. The preprocessed image information is stored in the above memory or another memory. Preprocessing includes noise reduction processing, normalization processing for positions, sizes, inclinations, and widths, and the like.
A feature extraction required for identifying an image is performed over the image information stored in the memory. A projection feature extraction method is used as one of techniques for extracting features. These projection features are extracted by a feature-processing section.
In order to extract features of an image on a given axis (e.g., the X-axis), the memory which stores the image information is scanned in a direction (e.g., the Y-axis) having a predetermined relationship with the given axis, and the image information is read out time-serially or parallel-time-serially. The readout image information is transferred to the feature-processing section. Pieces of the transferred image information are sequentially measured by the feature-processing section. Measured values sequentially obtained by such measurements are stored at predetermined positions corresponding to the given axis in the memory or another memory. A curve of an intensity distribution obtained by extracting features on the given axis is calculated on the basis of the stored measured values.
In recognition processing (to be described later), projection of a two-dimensional image pattern along one axis is not sufficient in order to improve reliability of similarity discrimination. For this reason, feature processing of a single image information must be performed on a large number of axes, thereby extracting different types of features. In order to extract features on a large number of axes, the following procedures are required:
(1) The above-mentioned feature processing is repeated in a single feature-processing section; or
(2) A large number of feature-processing sections are arranged and at the same time, pieces of image information read out from the memories are respectively transferred to the feature-processing sections. The above-mentioned feature processing operations are simultaneously performed in the large number of feature-processing sections.
Recognition processing is performed to discriminate which input image of interest belongs to which image according to data of a large number of intensity distribution curves. This recognition processing is achieved by time-serial digital correlation calculations between the data of different types of intensity distribution curves and data of the intensity distribution curves of different types of reference patterns.
A large number of digital accumulated values constituting the intensity distribution curves are respectively corresponded to vector components, and each intensity distribution curve is dealt as one vector. A total of intensity distribution curves is dealt as a set of vectors. In this case, the set of intensity distribution curves may be dealt as a single vector, and the individual digital accumulated values of each intensity distribution curve are corresponded to vector components constituting the single vector.
In the same manner as described above, each intensity distribution curve of the reference pattern can also be defined in the form of vector.
A vector calculator incorporated in the image recognition apparatus digitally and time-serially calculates correlations between the input image vectors and reference pattern vectors. The vector calculator may be a vector calculator practically used in a conventional parallel pipeline type computer.
In the correlation calculations between the input image vectors and the reference pattern vectors, a distance and an angle between the vectors can be used as a factor for evaluating the degree of correlation therebetween. In practice, the distance between the vectors is used as a measure for the degree of deviation, and the cosine of the angle is used as a measure for the degree of similarity.
Variations in input image patterns are present due to a variety of expression formats of the original image, and the input image constitutes a cluster. Positional errors also occur in the input image. For this reason, the reference point of the intensity distribution of the input image does not normally match with that of the reference pattern. Therefore, in vector correlation calculations, an optimal correlation must be found to match the reference point of the input pattern with that of the reference pattern.
Optimal correlation between the input image vector and the reference pattern vector can be obtained by repeating the vector correlation calculations according to time-serial digital processing for every shift.
The above-mentioned vector correlation calculation processing allows discrimination of a reference pattern having a higher degree of similarity to the input image, i.e., the most resemble reference pattern.
However, in the conventional image recognition apparatus described above, processing is performed employing mainly electronic techniques. Processing time is inevitably prolonged as follows:
In order to improve discrimination precision of the degree of similarity, features on a large number of axes must be extracted in feature processing. However, in procedure (1), when the single feature-processing section is used to repeat feature processing, the memory which stores the image information is scanned in predetermined directions to sequentially read out the image information from the memory. These informations are transferred to the feature-processing section and are measured as the measured values. The intensity distribution curve must be obtained on the basis of the measured values. Therefore, the above operation must be repeated to prolong the feature processing time, thus degrading efficiency of feature processing.
In procedure (2), the intensity distribution curves are obtained after the image information is transferred and measured. The feature processing time is prolonged, although procedure (2) is not worse than procedure (1). Procedure (2) requires a large number of feature-processing sections, and thus the overall system configuration is undesirably complicated and high cost.
In correlation calculations for discriminating the degree of similarity, processing time is prolonged in the same manner as in feature processing. More specifically, the objects to be calculated are a large number of digital vector components. Discrimination of the degree of similarity between the input image and the reference pattern must be performed by repeating correlation calculations of a large number of vectors according to time-serial digital processing, in association with necessity for finding an optimal correlation.
In order to shorten the processing time, the above-mentioned vector calculator is used. However, this calculator depends on time-serial digital processing and does not essentially solve the problem of long processing time. In addition, a vector processor is built into such a vector calculator. Therefore, the entire system consequently becomes highly costly.
In the conventional image recognition apparatus described above, if nonlinear feature processing such as circumferential or radial projection (to be described later) is performed, individual linear scanning start and end positions along predetermined directions must be determined by a special function, and the range of nonlinear shape to be projected must be determined by a set of a large number of linear scanning cycles. Therefore, it is not easy to perform nonlinear projection of image information and thus it is very difficult to increase the image recognition rate.